Advances in the development of high-speed digital computers have made practical the display of three-dimensional (3-D) graphics images in real time. Systems providing such display capabilities have found wide applications in fields such as engineering workstations, real-time simulators and cinematographic animation, to name only a few.
Demands for higher quality renderings of more complicated images have required ever greater computational throughput. Whereas early computer graphics systems were often barely able to provide a shaded, colored image of a simple geometric solid with hidden lines removed, it is now possible to provide high-resolution images of computer generated representations of very complicated objects such as, for example, a human figure.
Such advances have been made possible both by higher computational rates afforded by very large scale integrated (VLSI) circuits and by more efficient graphics processing algorithms. Despite such advances in graphics systems technology, state-of-the-art graphics systems remain constrained in their ability to provide high-quality real-time imagery. General purpose processors typically sacrifice image quality in order to achieve real-time operation. Alternatively, very high quality images can be generated, but without real time animation. Thus, dedicated graphics processors comprising special purpose hardware optimized to perform the various 3-D graphics operations such as vector manipulation, hidden surface elimination, shading, etc. have been developed. While providing high levels of performance, such dedicated graphics processors are expensive and lack the versatility of a general purpose processor.
A need therefore exists for a high-performance, graphics oriented processor capable of supporting a sustained high computation rate, but wherein 3-D graphics is largely implemented in software.